home *** CD-ROM | disk | FTP | other *** search
- /* GNUstep.h-- stuff for compatibility with GNUstep applications
- *
- * Window Maker window manager
- *
- * Copyright (c) 1997, 1998 Alfredo K. Kojima
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
- * USA.
- */
-
-
- #ifndef WMGNUSTEP_H_
- #define WMGNUSTEP_H_
-
- /*
- * Kluge for when proplist.h is included too. proplist.h #defines BOOL
- * and Xmd.h (which is indirectly included from Xproto.h) typedefs BOOL.
- * The worst is that the BOOL from Xmd.h is a 8bit type, while BOOL from
- * proplist.h is int...
- */
- #ifdef BOOL
- #define WINGS_BOOL_FLAG
- #undef BOOL
- #endif
-
- #include <X11/Xproto.h>
-
- #ifdef WINGS_BOOL_FLAG
- #define BOOL int
- #undef WINGS_BOOL_FLAG
- #endif
-
- #define GNUSTEP_WM_MINIATURIZE_WINDOW "_GNUSTEP_WM_MINIATURIZE_WINDOW"
-
- #define GNUSTEP_WM_ATTR_NAME "_GNUSTEP_WM_ATTR"
-
- #define GNUSTEP_TITLEBAR_STATE "_GNUSTEP_TITLEBAR_STATE"
- enum {
- WMTitleBarKey = 0,
- WMTitleBarNormal = 1,
- WMTitleBarMain = 2
- };
-
- #ifndef _WINGS_H_
- /* window stacking level */
- enum {
- WMNormalWindowLevel = 0,
- WMFloatingWindowLevel = 3,
- WMDockWindowLevel = 5,
- WMSubmenuWindowLevel = 10,
- WMMainMenuWindowLevel = 20
- };
-
- /* window attributes */
- enum {
- WMBorderlessWindowMask = 0,
- WMTitledWindowMask = 1,
- WMClosableWindowMask = 2,
- WMMiniaturizableWindowMask = 4,
- WMResizableWindowMask = 8,
- WMIconWindowMask = 64,
- WMMiniWindowMask = 128
- };
- #endif /* _WINGS_H_ */
-
- /* window manager -> appkit notifications */
- #define GNUSTEP_WM_NOTIFICATION "GNUSTEP_WM_NOTIFICATION"
-
-
- typedef struct {
- CARD32 flags;
- CARD32 window_style;
- CARD32 window_level;
- CARD32 reserved;
- Pixmap miniaturize_pixmap; /* pixmap for miniaturize button */
- Pixmap close_pixmap; /* pixmap for close button */
- Pixmap miniaturize_mask; /* miniaturize pixmap mask */
- Pixmap close_mask; /* close pixmap mask */
- CARD32 extra_flags;
- } GNUstepWMAttributes;
-
- #define GSWindowStyleAttr (1<<0)
- #define GSWindowLevelAttr (1<<1)
- #define GSMiniaturizePixmapAttr (1<<3)
- #define GSClosePixmapAttr (1<<4)
- #define GSMiniaturizeMaskAttr (1<<5)
- #define GSCloseMaskAttr (1<<6)
- #define GSExtraFlagsAttr (1<<7)
-
- /* extra flags */
- #define GSDocumentEditedFlag (1<<0)
-
- #define GSNoApplicationIconFlag (1<<5)
-
-
- #define WMFHideOtherApplications 10
- #define WMFHideApplication 12
-
- #endif
-